1. Technical Field
The present invention relates generally to an improved data processing system and in particular to a method and apparatus for generating fonts. Still more particularly, the present invention relates to a method and apparatus for controlling printing within a distributed data processing system.
2. Description of Related Art
A font is a set of glyphs having a particular face type, style, and weight. A font consists of all the glyphs available in a particular type and weight for a particular design. Typeface contains the computer definition. Fonts are used by computers for on-screen displays and by printers for hardcopy output. In both cases, the fonts are stored as either bitmaps (patterns of dots) or as outlines (defined by mathematical formulas). Commonly, a font is identified by a basic font name, such as xe2x80x9cCourierxe2x80x9d, xe2x80x9cArialxe2x80x9d, xe2x80x9cHelveticaxe2x80x9d, or xe2x80x9cTimes New Romanxe2x80x9d which identifies the general shapes of its characters, independent of size. The ability to vary fonts has many advantages. Varying fonts in a document allows a user to vary the size of letters to pack text more densely when necessary and to allow text to be more easily read. Using different fonts provides an ability to visually distinguish different parts of text. Such a variation of fonts can make text easier to scan and use. Further, some texts are more esthetically pleasing than other texts. On the other hand, some texts may be easier to read. Different fonts will appeal to different esthetic senses. Some fonts will appear traditional, others modern, while others may be humorous or shocking. The ability to select from a wide variety of fonts greatly increases the ability to tune the esthetic message of a document.
Most computer systems have the ability to display print text in different fonts. These computer systems typically have font resources, which contain predefined font descriptions for each shape of each character of each of the fonts that the computer can handle.
With respect to printing on distributed data processing systems, client computers may send print jobs to a remote location to produce a hardcopy. In some cases, the client computers may differ in the locale or language. Such a difference between client computers must be resolved at the print server. For example, in Java, a number of different languages or locales may be used. One client computer may use the language English in a United Kingdom locale while another client computer may use Japanese in a Japanese locale. A locale is a region, usually geographic, that shares customs, culture, and language. Locales are supported in Java by Local class. Examples of Locales are en_GB for the country United Kingdom with the language English, en_US for the country United States with the language English, en_CA for the country Canada with the language English, and fr_CA for the country Canada with the language French.
In Java environments, the user is at the whim of the Java Virtual Machine (JVM) and the font.properties file available with Java. The font.properties file, also referred to as the font properties file, is Java""s mapping of its logical fonts to platform specific fonts. A logical-font is an arbitrary platform independent font that can be mapped to a physical font with similar characteristics. In Java, examples of logical fonts are courier, dialog, and Times New Roman. Many users are not even aware of the font properties and those that are, are not aware of how the keywords and the JVM interact. In other words, the mapping of logical fonts to real physical fonts is unclear in such a system. As a result, client printing in one language may encounter poor print quality or slow font rendering performance. In addition, printing from a client Java machine in a different locale to a server Java machine is difficult because the font properties between the two will be different.
Therefore it would be advantageous to have an improved method and apparatus for controlling printing within a distributed data processing system.
The present inventions provides a method and apparatus in a distributed data processing system for controlling printing. An interface is presented, wherein the interface allows for association of a logical font with a number of system fonts or device fonts on a per printer queue basis. Responsive to a print request, the print request is printed using multiple system or device fonts associated with the logical font for that print request.